# coding=utf-8

class globalvar:
    i18n_object={} #全局变量，供后台使用的翻译信息对象
    sysparams_object={} #全局变量，记录所有pos参数信息对象
    store_object={}
    master_object={}#全局变量，记录所有master.properties文件里的信息对象

def set_i18nobject(_object):
    globalvar.i18n_object=_object

def get_i18nvalue(key='',placeholdervs=()):
    '''
    根据中文信息获取当前语言的翻译后信息
    :param key: 需要翻译的内容对应的key
    :param placeholdervs: 翻译内容包含的占位信息
    :return: 返回获取到的翻译信息，翻译文件中找不到就显示默认中文信息，如果中文配置文件都没有返回的是空
    '''
    if not globalvar.i18n_object:
        return ""
    try:
        value=str(globalvar.i18n_object[key])
        if value.find('%s')>=0:
            return value % placeholdervs
        else:
            return globalvar.i18n_object[key]
    except Exception as e:
        return ""

def set_sysparamsobject(_object):
    '''
    将pos使用的系统参数设置成全局变量
    :param _object: 系统参数对象
    :return:
    '''
    globalvar.sysparams_object=_object

def get_sysparamsobject(key='',default=''):
    '''
    根据key获取对应的系统参数值
    :param key: key值
    :param default: 默认值
    :return: 返回value值
    '''
    if not globalvar.sysparams_object:
        return default
    try:
        return globalvar.sysparams_object[key]
    except Exception as e:
        return default

def set_storeobject(_object):
    '''
    将pos使用的系统参数设置成全局变量
    :param _object: 系统参数对象
    :return:
    '''
    globalvar.store_object=_object

def get_storeobject():
    return globalvar.store_object

def set_masterobject(_object):
    globalvar.master_object=_object

def get_valuebykey(key='',default=''):
    '''
       根据key获取对应的系统参数值
       :param key: key值
       :param default: 默认值
       :return: 返回value值
       '''
    if not globalvar.master_object:
        return default
    try:
        return globalvar.master_object[key]
    except Exception as e:
        return default

def get_storebykey(key='',default=''):
    '''
       根据key获取对应的系统参数值
       :param key: key值
       :param default: 默认值
       :return: 返回value值
       '''
    if not globalvar.store_object:
        return default
    try:
        stores=globalvar.store_object[key]
        return stores
    except Exception as e:
        return default